// 给定一个字符串，要求把字符串前面的若干个字符移动到字符串的尾部，如把字符串“abcdef”前面的2个字符'a'和'b'移动到字符串的尾部，
// 使得原字符串变成字符串“cdefab”。请写一个函数完成此功能，要求对长度为n的字符串操作的时间复杂度为 O(n)，空间复杂度为 O(1)。

#include <stdio.h>
#include <iostream>
#include <istream>
#include <algorithm>
using namespace std;
// void quickSort(int a[],int,int);
// int main()
// {
//     int array[]={34,65,12,43,67,5,78,10,3,70},k;
//     int len=sizeof(array)/sizeof(int);
//     cout<<"The orginal arrayare:"<<endl;
//     for(k=0;k<len;k++)
//         cout<<array[k]<<",";
//     cout<<endl;
//     quickSort(array,0,len-1);
//     cout<<"The sorted arrayare:"<<endl;
//     for(k=0;k<len;k++)
//         cout<<array[k]<<",";
//     cout<<endl;
//     system("pause");
//     return 0;
// }
// void quickSort(int s[], int l, int r)
// {
//     if (l< r)
//     {
//         int i = l, j = r, x = s[l];
//         while (i < j)
//         {
//             while(i < j && s[j]>= x) // 从右向左找第一个小于x的数
//                 j--;
//             if(i < j)
//                 s[i++] = s[j];
//             while(i < j && s[i]< x) // 从左向右找第一个大于等于x的数
//                 i++;
//             if(i < j)
//                 s[j--] = s[i];
//         }
//         s[i] = x;
//         quickSort(s, l, i - 1); // 递归调用
//         quickSort(s, i + 1, r);
//     }
// }
//
void LeftShiftOne(char* s,int n)
{
  char t= s[0];
  for(int i=0;i < n;n++)
  {
      s[i] = s[i+1];
  }
  s[n-1] = t;
}

int main(int argc, char const *argv[]) {
  char *str;
   str = "abcjdkd";
  LeftShiftOne(str,7);

  // cout>>str;
  cout<<str;
  return 0;
}
